package com.example.Annocation.scope;

import com.example.Annocation.commons.Student;
import org.springframework.context.annotation.*;

/**
 * @Description TODO
 * @Date 2024/5/14 16:09
 * @Created by houjunfeng
 */
@org.springframework.context.annotation.Configuration
public class ScopeConfiguration {
    //默认bean名字为方法名 如果bean写了名字就用这个名字
    @Bean(name = {"student01"})
    @Scope("prototype")
    //singleton 容器创建时就调用这个方法
    //prototype 每次获取时才会创建一个新对象

    @Lazy//当bean范围是singleton时，这个注解可以在使用到这个方法时在创建对象
    public Student getStudent(){
        System.out.println("开始创建student的bean");
        return new Student("李四",35,22);
    }
}
